﻿using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Pay.Data;
using Pay.DTO;
using Pay.TO;

namespace Pay.IService {
    public interface IMerchantDeclarationService {
        /// <summary>
        /// 保存商户申报信息
        /// </summary>
        /// <returns>The verifyed.</returns>
        /// <param name="dto">Identifier.</param>
        int SaveMerchantDeclaration(merchant_declaration_dto dto);
        /// <summary>
        /// 供应商申报状态更新
        /// </summary>
        /// <param name="id"></param>
        /// <param name="status"></param>
        /// <returns></returns>
        int UpdateMerchantDeclarationStatus(long id, MerchantDeclarationStatusEnums status);
        /// <summary>
        /// 获取首页供应商资料
        /// </summary>
        merchant_declaration_dto_ex GetMerchantInfo(long id);
        /// <summary>
        /// 获取用户状态
        /// </summary>
        /// <param name="user_id"></param>
        /// <returns></returns>
        int GetMerchantDeclarationStatus(long user_id);
        /// <summary>
        /// 获取oem认证数量信息
        /// </summary>
        /// <param name="user_id"></param>
        /// <returns></returns>
        merchant_certification_dto GetMerchantCertification(long user_id);
        /// <summary>
        /// 获取商户申报列表
        /// </summary>
        /// <returns>The verifyed.</returns>
        /// <param name="query">Identifier.</param>
        PagedResult<merchant_declaration_dto> GetMerchantDeclarations(MerchantDeclarationQuery query);
    }
}
